using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using CoreData;
using Services;
using Helper;
namespace ActionServices
{

    public interface IInventory_DetailActionService:BaseActionService
    {
        long Save(object _model);
        IList<CoreData.Inventory_Detail> GetListByLINQ(Func<CoreData.Inventory_Detail, Boolean> _where);
        CoreData.Inventory_Detail GetOneByLINQ(Func<CoreData.Inventory_Detail, Boolean> _where);
        bool Delete(object _model);
        IList<CoreData.Inventory_Detail> GetList_Inventory(string _searchString);
        IList<CoreData.Inventory_Detail> GetList_ProductInRoom(long _RoomID);
        IList<CoreData.Inventory_Detail> GetList_ProductBeginStock(string _where);
        IList<CoreData.Inventory_Detail> GetList_InventoryDetail(long _RoomID,long _ProductID);
    }

    public partial class Inventory_DetailActionService:IInventory_DetailActionService
    {
       Inventory_DetailService Service;

       public Inventory_DetailActionService()
       {
           Service = new Inventory_DetailService();
       }

       #region Main Method

       public virtual long Save(object _model)
       {
           return Service.Save(_model);
       }

       public virtual object GetByID(long _id)
       {
           return Service.GetByID(_id);
       }

       public virtual object GetList()
       {
           return Service.GetList();
       }

       public virtual IList<CoreData.Inventory_Detail> GetListByLINQ(Func<CoreData.Inventory_Detail, Boolean> _where)
       {
           return Service.GetListByLINQ(_where);
       }

       public virtual CoreData.Inventory_Detail GetOneByLINQ(Func<CoreData.Inventory_Detail, Boolean> _where)
       {
           return Service.GetOneByLINQ(_where);
       }

       public virtual object GetList(string _searchstring)
       {
           return Service.GetList(_searchstring);
       }

       public virtual bool Delete(object _model)
       {
           return Service.Delete(_model);
       }

       #endregion


       #region Other Method
       public virtual IList<CoreData.Inventory_Detail> GetList_Inventory(string _searchString)
       {
           return Service.GetList_Inventory(_searchString);
       }
       public virtual IList<CoreData.Inventory_Detail> GetList_ProductInRoom(long _RoomID)
       {
           return Service.GetList_ProductInRoom(_RoomID);
       }
       public virtual IList<CoreData.Inventory_Detail> GetList_ProductBeginStock(string _where)
       {
           return Service.GetList_ProductBeginStock(_where);
       }
       public virtual IList<CoreData.Inventory_Detail> GetList_InventoryDetail(long _RoomID, long _ProductID)
       {
           return Service.GetList_InventoryDetail(_RoomID, _ProductID);
       }
        #endregion

    }
         
}
